﻿using CarAppDomain.CarType.Entities;
using CarAppDto.CarType.CountryDtos;
using D.UtilCore.Dtos;
using D.UtilSqlsugarOrm;

namespace CarAppDomain.CarType.IService
{
    public interface ICountryService : IBaseService<CountryEntity>
    {
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="reqModel"></param>
        /// <returns></returns>
        Task<ApiResult<int>> AddCountryAsync(ReqAddCountry reqModel);

        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="ids"></param>
        /// <returns></returns>
        Task<ApiResult<int>> DeleteCountryAsync(List<string> ids);

        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="reqModel"></param>
        /// <returns></returns>
        Task<ApiResult<int>> UpdateCountryAsync(ReqUpdateCountry reqModel);

        /// <summary>
        /// 查询列表
        /// </summary>
        /// <param name="reqModel"></param>
        /// <returns></returns>
        Task<ApiResult<List<RepCountry>>> QueryCountryListAsync(ReqQueryCountryList reqModel);

        /// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="reqQueryAdminPage"></param>
        /// <returns></returns>
        Task<ApiResult<PageModel<RepCountry>>> QueryCountryPagesAsync(ReqQueryCountryPage reqQueryPage);

        /// <summary>
        /// 查询单个
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<ApiResult<RepCountry>> GetCountryAsync(string id);
    }
}
